// pages/detail/index.js

const interfaces = require('../../utils/urlconfig.js');

Page({

  /**
   * 页面的初始数据
   */
  data: {
    partData:{},
    baitiao:[],
    baitiaoSelectItem: {
      desc: "【白条】首单立享优惠"
    },
    hideBaitiao: true,
    hideSelector: true,
    badgeCount: 0
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    // console.log(options)
    const id = options.id
    const self = this
    wx.showLoading({
      title: '拼命加载中',
    })
    wx.request({
      url: interfaces.productionDetail,
      success(res){
        let result = null;//备接收请求回的data
        res.data.forEach(data => {
          if(data.partData.id == id){
            result = data
            // console.log(result)
          }
        })
        self.setData({
          partData:result.partData,
          baitiao:result.baitiao
        })
        wx.hideLoading()
      }
    })
  },
  // 弹出白条分期类容
  popBaitiaoView(){
    // console.log('abitiao')
    this.setData({
      hideBaitiao:false,
    })
    
  },
  // 弹出购物选择器
  popBuyView() {
    // console.log('sahngping')
    this.setData({
      hideSelector: false,
    })
  },
  // 更新分期方式
  updateSelectItem(e){
    console.log(e)
    this.setData({
      baitiaoSelectItem: e.detail
    })
  },
  // 更新已选数量
  updateCount(e){
    // console.log(e)
    let partData = this.data.partData
    partData.count = e.detail.val
    this.setData({
      partData:partData
    })
  },
  // 加入购物车
  addCart(){
    // console.log(e)
    let self = this
    wx.getStorage({
      key: 'cartInfo',
      // 拿到本地carInfo数据，判断数组是否有是否有添加的商品
      success: function(res) {
        // console.log(res)
        const cartArray = res.data
        const partData = self.data.partData
        let isExit = false
        // 匹配本地数据和当前数组id
        cartArray.forEach(cart => {
          if(cart.id == partData.id){
            isExit = true
            cart.total += self.data.partData.count
            wx.setStorage({
              key: 'cartInfo',
              data: cartArray,
            })
          }
        })
        // 不存在商品
        if(!isExit){
          partData.total = self.data.partData.count
          cartArray.push(partData)
          wx.setStorage({
            key: 'cartInfo',
            data: cartArray,
          })
        }
        // 更改购物车数量
        self.setBadge(cartArray)
      },
      fail: function(){
        let partData = self.data.partData
        partData.total = self.data.partData.count
        // console.log(partData)
        let cartArray = []
        cartArray.push(partData)
        wx.setStorage({
          key: 'cartInfo',
          data: cartArray,
        })
        // 更改购物车数量
        self.setBadge(cartArray)
      }
    })
    // 加入提示
    wx.showToast({
      title: '成功加入购物车',
      icon: 'success',
      duration: 1000
    })
    
  },
  // 更改购物车数量
  setBadge(cartArray){
    // console.log(222)
    let num =0
    cartArray.forEach((item, index) => {
      num += item.total
      return num
    })
    this.setData({
      badgeCount: num
    })
  },
  // 跳转到购物车
  toCartView(){
    wx.switchTab({
      url: '/pages/cart/index',
    })
  },

  /**
  * 生命周期函数--监听页面显示
  */
  onShow: function () {
    const self =this
    wx.getStorage({
      key: 'cartInfo',
      success: function(res) {
        const cartArray = res.data
        self.setBadge(cartArray)
      },
    })
  },
  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})